package com.dankegongyu.lib.common.base;

import android.os.Bundle;
import androidx.annotation.LayoutRes;
import androidx.annotation.Nullable;

/**
 * @author WuPuquan
 * @version 1.0
 * @since 2017/9/13 18:03
 */
public interface IBaseActivity {

    /**
     * setContentView(int layoutResId)
     *
     * @return e.g. R.layout.activity_main
     */
    @LayoutRes
    int getContentViewLayoutId();

    /**
     * init views and listeners etc.
     *
     * @param savedInstanceState bundle for savedInstanceState
     */
    void init(@Nullable Bundle savedInstanceState);

    /**
     * init presenters
     */
    void initPresenter();

    /**
     * do business
     */
    void doBusiness();

}
